Gesture control of a data processing apparatus

ABSTRACT

A method and system is disclosed that comprises detecting a user gesture at a location which is remote from a data processing terminal and identifying a first application based on the distance of the detected user gesture being within a first distance range from the data processing terminal, wherein a plurality of applications are associated with different distance ranges from the data processing terminal. The method and system may further cause performance of one of a plurality of functions of the first application based on the user gesture.

FIELD

This disclosure relates to gesture control of a data processingapparatus, particularly, though not exclusively, a wearable dataprocessing apparatus.

BACKGROUND

Data processing apparatuses having a small form-factor are becomeincreasingly popular. For example, wearable devices such as wirelessearphones, earbuds and smartwatches are now relatively common. Otherexamples include apparatuses associated with the so-calledInternet-of-Things (IoT.) The small form-factor of such apparatusesmeans that it can be difficult to control different types offunctionality in the same way that, for example, larger touch screendevices can offer.

For example, a Bluetooth earbud may only have sufficient surface areafor a single physical control button. This limits the different types offunctionality that might be applicable to the earbud. The user may haveto resort to their associated media player to manually select or controldifferent applications and the different types of functionality on thedifferent applications, which is cumbersome.

SUMMARY

A first aspect provides an apparatus, comprising: means for receivingdata indicative of a detected user gesture at a location which is remotefrom a data processing terminal; means for identifying a firstapplication based on the distance of the detected user gesture beingwithin a first distance range from the data processing terminal, whereina plurality of applications are associated with different distanceranges from the data processing terminal; and means for causingperformance of one of a plurality of functions of the first applicationbased on the user gesture.

The apparatus may further comprise: means for detecting another remoteuser gesture at a distance within a second range from the dataprocessing terminal; means for identifying a second application,different from the first application, based on the distance being withinthe second range; and means for causing performance of one of aplurality of functions of the second application based on the usergesture.

The different distance ranges may be substantially non-overlapping.

The means for causing performance of the one of said plurality offunctions may be arranged to identify a type of the detected usergesture and determine which of a plurality of predetermined functionsassociated with the identified application correspond to said identifiedgesture type, which determined function is then caused to be performed.

In the event that a predetermined gesture moves from the first distancerange, into a different distance range, a data transfer function may beperformed between the associated applications.

In the event that a predetermined gesture corresponds to a sharingfunction, a data transfer function may be performed between theassociated application and an application associated with another dataprocessing terminal in proximity.

The association between different ones of the plurality of applicationsand the different is distance ranges may be updated dynamically. Theassociation may be dynamically updated by assigning to a predeterminedone of the different distance ranges the most frequently and/or recentlyused application. The predetermined one of the different distance rangesmay be that which is closest to the data processing terminal.

The apparatus may be a data processing terminal. For example, theapparatus may be a wearable data processing terminal. The apparatus maycomprises one of an earphone, headphones and watch. For example, wherethe apparatus is an earphone or headphone, they may be furtherconfigured to issue an audio notification to confirm the function and/orrelated parameters of the function.

The means for causing performance of the function may be arranged toissue a corresponding instruction to a further data terminal to whichthe wearable data processing terminal is proximate.

The means for detecting the user gesture may be by means of capacitivesensing using one or more capacitive sensors of the data processingterminal. An array of sensors may be used in some cases.

Another aspect provides a method comprising: receiving data indicativeof a detected user gesture at a location which is remote from a dataprocessing terminal; identifying a first application based on thedistance of the detected user gesture being within a first distancerange from the data processing terminal, wherein a plurality ofapplications are associated with different distance ranges from the dataprocessing terminal; and causing performance of one of a plurality offunctions of the first application based on the user gesture. Preferredfeatures of the first aspect may also be applied to this aspect.

Another aspect provides a computer-readable medium comprising computerprogram code stored thereon, the computer readable medium and computerprogram code being configured to, when run on at least one processor: toreceive data indicative of a detected user gesture at a location whichis remote from a data processing terminal; to identify a firstapplication based on the distance of the detected user gesture beingwithin a first distance range from the data processing terminal, whereina plurality of applications are associated with different distanceranges from the data processing terminal; and to cause performance ofone of a plurality of functions of the first application based on theuser gesture. Preferred features of the first aspect may also be appliedto this aspect.

Another aspect provides a non-transitory computer-readable medium havingstored thereon computer-readable code, which, when executed by at leastone processor, causes the at least one processor to perform a method,comprising: receiving data indicative of a detected user gesture at alocation which is remote from a data processing terminal; identifying afirst application based on the distance of the detected user gesturebeing within a first distance range from the data processing terminal,wherein a plurality of applications are associated with differentdistance ranges from the data processing terminal; and causingperformance of one of a plurality of functions of the first applicationbased on the user gesture. Preferred features of the first aspect mayalso be applied to this aspect.

Another aspect provides an apparatus, the apparatus having at least oneprocessor and at least one memory having computer-readable code storedthereon which when executed controls the at least one processor: toreceive data indicative of a detected user gesture at a location whichis remote from a data processing terminal; to identify a firstapplication based on the distance of the detected user gesture beingwithin a first distance range from the data processing terminal, whereina plurality of applications are associated with different distanceranges from the data processing terminal; and to cause performance ofone of a plurality of functions of the first application based on theuser gesture. Preferred features of the first aspect may also be appliedto this aspect.

BRIEF DESCRIPTION OF DRAWINGS

Embodiments will now be described, by way of non-limiting example, withreference to the accompanying drawings, in which:

FIG. 1 is a schematic view of a user gesture, remote from a firstapparatus, within one of a plurality of ranges of the apparatus forcontrolling a function according to some embodiments;

FIG. 2 is a schematic view of a user gesture, remote from a secondapparatus, within one of a plurality of ranges of the apparatus forcontrolling a function according to some embodiments;

FIG. 3 is a schematic diagram of hardware components of the FIG. 1 orFIG. 2 apparatuses according to some embodiments;

FIG. 4 is a schematic diagram of functional components of the FIG. 1 orFIG. 2 apparatuses according to some embodiments;

FIG. 5 is an example of a mapping database shown in FIG. 4 according tosome embodiments;

FIG. 6 is a flow diagram of operations performed at the FIG. 1 or FIG. 2apparatuses according to some embodiments;

FIG. 7 is a flow diagram of operations performed at the FIG. 1 or FIG. 2apparatuses for data sharing between applications, according to someembodiments;

FIG. 8 is a schematic view of the first apparatus and a gesturerepresenting a share operation for detection at the first apparatus forperformance of the FIG. 7 method;

FIG. 9 is a flow diagram of other operations performed at the FIG. 1 orFIG. 2 apparatuses for data sharing between an application of the firstapparatus and another apparatus, according to some embodiments; and

FIG. 10 is a schematic view of the first apparatus and a gesturerepresenting a share operation for detection at the first and the otherapparatus for performance of the FIG. 9 method.

DETAILED DESCRIPTION

Embodiments herein relate to methods and systems for gesture control ofa data processing apparatus or terminal, which may be a wearable dataprocessing terminal or indeed any other type of data processingterminal, which typically but not exclusively will be portable and/orwireless.

For example, embodiments may relate to methods and systems for gesturecontrol of a wearable data processing terminal such as one or more ofearphones, earbuds, headphones or other forms of wearable audio terminalcomprising a speaker for placement adjacent one or more user's ears. Forexample, an embodiment described later on relates to a wireless earbudwhich may communicate with an associated other terminal such as a mediaplayer, smartphone or tablet computer. The method of communication maybe wireless, e.g. using Bluetooth or a similar wireless protocol.

For example, in other embodiments, the wearable data processing terminalmay be a limb-worn device such as a smartwatch or similar. Similarly,the smartwatch may be in communication with an associated other terminalsuch as a media player, smartphone or tablet computer. The method ofcommunication may be wireless, e.g. using Bluetooth or a similarwireless protocol.

The use and popularity of such wearable data processing terminalscontinues to grow. They provide a convenient manner of accessing one ormore applications, and functionality to associated with suchapplications, particularly if the user is travelling or involved inphysical activity, for example.

Such applications may comprise one or more of a music or anotheraudio-playing application, a health monitoring application, a voice callapplication, a text or multimedia communications application, aspeech-recognition application, a podcast application and so on.

For the avoidance of doubt, an application in the context of thisdisclosure comprises any computer program or computer program typeproviding a distinct group of functions, such as a music application, ahealth monitoring application, a voice telephony application, a text ormultimedia messaging application, a speech-recognition application, apodcasting application, etc. The term may therefore be consideredbroader than referring to a specific software application. For example,in some embodiments, there may be two distinct software applicationsproviding music, but they may have common music playing functionalitysuch as enable, disable, play, pause, stop, rewind, forward, next track,previous track, volume up, volume down etc.

In some embodiments, the wearable apparatus may comprise a processor andmemory providing one or more applications, such as those mentionedabove. In other embodiments, the wearable apparatus may communicatewirelessly with another data processing apparatus, such as a smartphoneor tablet computer, which provides the aforementioned applications andfunctionality, the output from which is relayed back to the wearableapparatus. In this case, the wearable apparatus is in signalcommunication with the other data processing apparatus.

A problem with certain data processing terminals, particularly but notexclusively wearable terminals, is that they have a small form factor.This limits how users may interact with the data processing terminal oranother data processing apparatus with which it is in signalcommunication. For example, there may be limited space for buttons orswitches to be able to input commands for the various types of functionsthat may be associated with the different applications. It is generallynot practicable to have touch screens on such data processing terminalsdue to their size and the additional expense.

Furthermore, it is difficult to switch between different applications.For example, a user listening to music may wish to interact with ahealth monitoring application to measure heart rate at a current time.This ordinarily requires the user to get out their mobile phone ortablet computer, close or minimise to background the music applicationand open the health monitoring application manually.

The use of voice commands for interaction with such data processingterminals is disadvantageous due to background noise and interference,and its potential to disturb others.

Accordingly, embodiments herein relate to the detection andinterpretation of physical user gestures made remotely from the dataprocessing terminal; that is gestures which do not touch the dataprocessing terminal.

Such gestures may be detected using capacitive coupling, which is aknown technology. In some embodiments, a single capacitive sensor may beprovided in or on the data processing terminal. In other embodiments, anarray comprised of a plurality of capacitive sensors may be provided,for determining more accurately the spatial location of user gesturesrelative to the data processing terminal.

In overview, embodiments involve assigning or associating applicationsto respective distance ranges relative to the data processing terminal.Typically, the distance ranges are non-overlapping, so that a firstrange (e.g. that nearest to the data processing terminal) is associatedwith a first application and another range (e.g. beyond the first range)is associated with a different application. In some embodiments, theranges may overlap, as will be briefly mentioned later on.

Particular gestures made within said ranges are further associated withcorresponding functionality for those applications, and hence adistinction can be made between a first gesture made in the first range,a second gesture made in the first range, a first gesture made in asecond range and a second gesture made in the second range, and so on.This means that the user can control multiple different applicationswith multiple different functions based on what gesture they make andwhere, relative to the data processing terminal.

Further, the user does not necessarily need to manually switch betweendifferent applications. The methods and systems provide a more intuitiveway of interacting with applications.

In some embodiments, the associations between distance ranges andapplications are predefined, which can be factory set, or performed bythe user and/or updated by the user.

The associations may be fixed or they may change dynamically.

For example, the associations may be updated dynamically so that aparticular application which has been used most recently is associatedwith a particular distance range, for example that which is closest tothe data processing terminal. In other embodiments, the particularapplication which has been used most frequently, for example over apredetermined time range, may be associated with the particular distancerange. Other rules may be applied.

In some embodiments, where the data processing terminal emits audio, forexample if it is an earbud or a set of headphones, a detected gesturemay cause audio confirmation of the associated function currentlyselected, e.g. “playing audio” or “monitoring heart rate.” In someembodiments, a confirmation of which range an expected gesture is withinmay be provided. For example, if a user's hand is within a second range,then prior to detecting any particular gesture, an audio confirmation ofthe application may be produced, e.g. “music player.” This preventsaccidental control of the incorrect application, which may beparticularly useful if dynamic updating is used.

Referring to FIG. 1, for example, a wireless earbud 10 is showncomprising a body 20 and a flexible tip 30 for insertion into a humanear. The body 20 comprises a system to be explained below, including aradio frequency (RF) transceiver for communication with an associatedmedia player, smartphone or tablet computer. The transceiver may be aBluetooth transceiver, for example. The earbud 10 further compriseswithin the body 20 a capacitive sensor 40 which forms part of the systemfor sensing user gestures in proximity to the sensor; it will beappreciated that the sensor will produce a signal indicative of thedistance of the user gesture from the sensor, and hence the earbud, andalso a gesture type.

For example, the gesture type may be a tap gesture, comprising a sharpmovement of the finger in mid-air. Another gesture type may be a swipinggesture, comprising of a smooth movement in mid-air. A distinction maybe made between horizontal and vertical swipes. Other gesture types maycomprise one or more of flicking, arcuate, circular or pointinggestures, for example. The use of different numbers of fingers or otherparts of the body may relate to other gestures, which may bedistinguished from one another. For example a tap gesture made with twofingers may be distinguished over a tap gesture made with one finger.

More accurate gesture recognition may be achieved using multiplecapacitive sensors, which may be arranged in an array within or on theearbud 10. These permit a more volumetric sensing of distance andgesture type.

In the shown example, a user's hand 50 is represented in proximity tothe earbud 10, but remote therefrom. The user's hand 50 represents agesture.

In accordance with embodiments herein, the detected distance from theearbud 10 determines which application the gesture relates to, based onone or more distance ranges (hereafter “ranges.”) A first range isindicated by reference numeral 60, defining a first zone which may beomnidirectional around the earbud 10, or it may be segmented around theearbud. A second, non-overlapping range is indicated by referencenumeral 70, defining a second, non-overlapping zone which may beomnidirectional around the earbud 10, or it may be segmented. Thegesture 50 is shown in the first range 60, and hence the system of theearbud 10 will identify that this gesture relates to a firstapplication. The type of gesture will determine what function iscontrolled. A gesture made in the second range 70 will be identified asrelating to another application and, again, the type of gesture willdetermine what function is controlled of the other application.

A third range 80 is shown merely to indicate that any number of zonesmay be provided, at least within a distance that can be reliably sensedby the capacitive sensor 40.

In some embodiments, the sensor 40 senses gestures made in a limitedvolumetric space, i.e. not omnidirectional. For example, the sensor 40may be configured to only sense gestures made within a predeterminedcone-shaped volume extending outwards from the body 20 and away from thetip 30. Alternatively, the sensor 40 may be configured to only sensegestures substantially along a particular axis or segmented region ofthe surrounding area. For example, it may be undesirable to sense theregion directly beneath the earbud 10 where the user's body will be.

FIG. 2 shows another embodiment which is a smartwatch 85. The smartwatch85 comprises a main body 90 in which the system of the embodiments ishoused, and may comprise a crown 92 which houses a capacitive sensor. Insome embodiments, the crown 92 may be omitted in which case the sensoris housed within the main body 90. In a manner similar to the FIG. 1embodiment, capacitive sensing is employed to detect gestures madewithin two or more respective zones 94, 96, 98 to determine anapplication which the gesture relates to, and to determine the functionperformed by the gesture. Here, a form of virtual crown may be providedwhich enables setting of, for example, the time, date, and a stopwatch,by means of detecting gestures in the different zones. For example, atwisting gesture made in the first zone 94 may represent adjusting thetime using a time application, a twisting gesture made in the secondzone 96 may represent adjusting the date using a date application, and atap gesture made in the third zone may represent starting a timer usinga stopwatch application, and so on.

FIG. 3 is a schematic diagram of components of either of the earbud 10or the smartwatch 85 shown in FIGS. 1 and 2 respectively. For ease ofexplanation, we will assume that the components are those in the earbud10, but it will be appreciated that the following is applicable to thesmartwatch 85.

The earbud 10 may have a processor 100, a memory 104 closely coupled tothe processor and comprised of a RAM 102 and ROM 103, an audio output108, and a network interface 110. In the case of the smartwatch 85, adisplay and one or more hardware keys may be used, for example in placeof the audio output 108. The earbud 10 may comprise one or more networkinterfaces 110 for connection to a network, e.g. using Bluetooth orsimilar. The processor 100 is connected to each of the other componentsin order to control operation thereof.

The memory 104 may comprise a non-volatile memory, a hard disk drive(HDD) or a solid state drive (SSD). The ROM 103 of the memory 104stores, amongst other things, an operating system 112 and may storesoftware applications 114. The RAM 102 of the memory 104 may be used bythe processor 100 for the temporary storage of data. The operatingsystem 112 may contain code which, when executed by the processor warecomponents of the earbud 10.

The processor 100 may take any suitable form. For instance, it may be amicrocontroller, plural microcontrollers, a processor, or pluralprocessors and it may comprise processor circuitry.

In some embodiments, the earbud 10 may also be associated with externalsoftware applications. These may be applications stored on a remotedevice 120 and may run partly or exclusively on the remote device. Theseapplications may be termed, in some cases, cloud-hosted applications.The earbud 10 may be in communication with the remote device 120 inorder to utilize the software application stored there.

For example, the earbud 10 may issue a signal to the remote device 120which corresponds to a particular function of the application storedthereon. For example, a gesture indicative of a volume up or down maycause the earbud 10 to issue a signal corresponding to the relevantvolume up or down function to the remote device 120. The remote device120 is configured to decode or interpret the signal and perform thevolume up or down function locally. The resulting audio may then berelayed to the earbud 10 at the appropriate volume. In other situations,for example in controlling some non-audio functionality, such as openinga health application on the remote device 120, no relaying is necessary.

FIG. 4 shows example functional elements of a data processing terminal130 according to some embodiments. The data processing terminal 130 mayfor example be the earbud 10 or the smartwatch 85 shown in FIGS. 1 and 2respectively.

The data processing terminal 130 comprises a capacitive proximity sensor132, a proximity controller 134, a mapping database 136, an interactionlayer 138, and an application stack 140 comprising a plurality ofapplications, e.g. two or more of a music playing application, a healthmonitoring application, a voice call application, a text or multimediacommunications application, a speech-recognition application, a podcastapplication and so on.

These elements may be provided by software, firmware, hardware or anycombination thereof. For example, the proximity controller 134 andinteraction layer 138 may comprise a software application 114, stored onthe memory 104 shown in FIG. 3.

Reference numeral 150 indicates the presence of a user's hand remotefrom the data processing terminal 130, which in use may be selectivelypositioned within one of three spatial zones R1, R2 and R3 representedby respective distance ranges.

The capacitive proximity sensor 132 may be any suitable sensor asmentioned above.

The proximity controller 134 may be configured to control assignment orassociation of three applications in the application stack 140 to therespective spatial zones R1, R2 and R3. These assignments are stored,and potentially updated from time-to-time, in the mapping database 136which is shown schematically in FIG. 5.

Referring to FIG. 5, the mapping database 136 may comprise, or representin any suitable form, an assignment table storing, for each range, arespective application. In the shown example, the nearest range which isset to be between 0.1-2 cm from the data processing terminal 130 islabelled R1, the next range which is set to be between 2-4 cm from thedata processing terminal is labelled R2 and the next range which is setto be between 4-6 cm from the data processing terminal is labelled R3.R1 is assigned to a music application, R2 to a voice call (i.e.telephony) application, and R3 to a health application.

For each application, a plurality of gestures and their correspondingfunction for the application are also stored.

For example, for the music application, the gestures “tap”, “verticalswipe” and “horizontal swipe” are assigned to “enable/play/pause”,“volume up/down” and “next/previous track” respectively.

For example, for the voice calls application, the gestures “tap”,“vertical swipe” and “horizontal swipe” are assigned to“enable/answer/end call”, “volume up/down” and “next/previous contact”respectively.

For example, for the health application, the gestures “tap”, “verticalswipe” and “horizontal swipe” are assigned to “enable/disable”,“activity selector” and “date selector” respectively.

It will be appreciated that a greater or fewer number of applications,gestures and/or functions may be represented in the mapping database136. It will also be appreciated that different gestures may berepresented. For example, a gesture for determining a battery level ofthe data processing terminal may be provided.

The assignments shown in FIG. 5 may be factory set. The assignments maybe fixed or may be updated. For example, the data processing terminal130 may be provided with associated setup software either on a disc ordownloadable from a website or even stored on the memory 404 for plugand play operation. The setup software may permit a user to make theassignments and/or manually update them. As will be discussed later on,the assignments may update dynamically over time. The ranges may also beadjusted by user control or dynamically, for example based onenvironmental factors.

Returning to FIG. 4, the interaction layer 138 operates responsive todetecting an object, e.g. the user's hand 150, within proximate rangeand within one of the ranges R1, R2 or R3. The interaction layer 138queries the mapping database 136 to identify the application assigned tothis range and the gesture. In the shown example, the second range R2 isidentified and hence a voice call application is identified. Thisidentification by the interaction layer 138 causes performance of thefunction associated with the gesture for the voice calls application(App2) in the application stack 140, e.g. answering a call responsive toa tap gesture.

In a subsequent stage, for example, the user may make an upwards swipegesture in the same range R2. Responsive to this, the interaction layer138 will cause an increase in volume of the voice call.

In a subsequent stage, for example, whilst the call is ongoing, the usermay move their hand into the third range R3. This may result in an audioconfirmation (e.g. if the data processing terminal 130 is an audiodevice) by playing an audio clip such as “health” to notify the user ofsaid fact. The user may then make a tap gesture in the third range R3.Responsive to this, the interaction layer 138 will cause enablement ofthe health application without interrupting the voice call. In asubsequent stage, for example, the user may make a vertical swipe in thethird range R3, and the interaction layer 138 will scroll throughdifferent activity types which is may, in the case of an audio device,be briefly notified as an audio confirmation, e.g. “walking.”

Thus, applications that are hidden or disabled may be enabled withoutphysical interaction.

In some embodiments, certain application functions may not be permitted,or may be modified, dependent on what function is currently running. Forexample, a gesture for playing a music track may not be permitted if acall is ongoing. Alternatively, the function may be modified dependenton the ongoing function, for example by readying the music track forplaying as soon as the call is dropped.

In some embodiments, the correlation between ranges and applicationand/or gestures and functions may be stored elsewhere other than themapping database 136. For example, the correlations may be stored in aseparate database, on the interaction layer, or in a remote dataterminal or server. The FIG. 4 arrangement is merely illustrative.

In some embodiments, one or more of the functional modules shown in thedata processing terminal 130 (other than the capacitive sensor 132) maybe provided in a separate data processing terminal such as a smartphoneor tablet computer. In this respect, the separate data processingterminal may receive the sensing signal from the capacitive sensor 132and perform the steps to be outlined below, although for ease ofexplanation we will assume in the following that they are performed inthe data processing terminal 130 itself.

FIG. 6 is a flow diagram illustrating example processing operations thatmay be performed by the data processing terminal 130. Certain operationsmay be omitted or replaced with others.

A first operation 6.1 comprises receiving data indicative of a detecteduser gesture at a first location which is remote from a data processingterminal 130.

Another operation 6.2 comprises identifying an application based ondistance of the detected user gesture being within a particular range.

Another operation 6.3 comprises causing performance of one of aplurality of functions of the identified application based on the usergesture.

FIG. 7 is a flow diagram illustrating example processing operations thatmay be performed is by the data processing terminal 130 in anotherembodiment.

A first operation 7.1 comprises receiving data indicative of a detecteduser gesture spanning two distance ranges.

A second operation 7.2 comprises identifying two applications based onthe two ranges.

A third operation 7.3 comprises causing a data transfer from one of theapplications to the other applications.

In this embodiment, a predetermined gesture that spans two, orpotentially more, distance ranges may be interpreted to cause datasharing between the two corresponding applications, where available.

For example, FIG. 8 shows the FIG. 1 earbud 10 having the two ranges 60,70 and a user gesture 50 that starts in the first (closest) range andmoves to the second range in a sideways swiping motion. The particular‘share’ gesture may correspond to a share, copy or move function of theparticular application. The particular ‘share’ gesture may require aparticular start gesture and a particular end gesture, to prevent theshare function being applied to unintended applications in outer ranges.

For example, the first application associated with the first range 60may be a music application and the second application associated withthe second range 70 may be voice calls application. In this respect, theshare gesture may cause a currently playing or selected music track inthe first application being shared with the second application so thatthe music track is used as the ringtone for the second application.

In another example, the first application may be a multimediaapplication and the second application may be a text messagingapplication. The sharing gesture may cause a currently selectedmultimedia entity being entered into a text message.

In another example, the first application may be a network setupapplication and the second application may be an application requiringnetwork settings, e.g. proxy settings. The sharing gesture may causesharing of the network settings between the two applications.

Numerous other examples may be envisaged, for example simple filetransfers between applications.

In this situation, the share gesture may be associated with a share,copy or move function of the first application and a share, paste ordownload function of the second application.

FIG. 9 is a flow diagram illustrating example processing operations thatmay be performed by the data processing terminal 130 in anotherembodiment.

A first operation 9.1 comprises receiving data indicative of a detecteduser gesture at a first location which is remote from a data processingterminal 130.

A second operation 9.2 comprises identifying an application based on thedistance of the detected user gesture being within a particular range.

A third operation 9.3 comprises identifying the user gesture as being aneighbourhood sharing function.

A fourth operation 9.4 comprises causing sharing of data between theidentified application and another device in proximity; The other devicemay be paired with the current device, but this is not essential.

In this embodiment, a predetermined gesture that is indicative ofneighbourhood sharing may permit data to be shared between different butproximate devices which are not otherwise physically connected. Thepredetermined gesture may comprise a start gesture and an end gesture.

For example, FIG. 10 shows the FIG. 1 earbud 10 and a second earbud 10A,which may belong to a different person. The dotted lines 150, 160indicate the range of their respective first ranges, in this example. Auser gesture 50 that starts in the first range 150 of the first earbud10 and ends in that 160 of the second earbud 10A may cause inter-devicesharing such that, for example, a music track being played or selectedon the first earbud is transferred to the second earbud 10A. In thiscase, the neighbourhood sharing gesture may be associated with a share,copy or move function of the first earbud function and a share, paste ordownload function of the second earbud function.

In some embodiments, the different distance ranges may partiallyoverlap, although this may require the functional gestures of onecorresponding application to be distinct from those of the othercorresponding application, in order that a gesture made in theoverlapping zone is not incorrectly interpreted.

As mentioned previously, although embodiments mainly assume that thedetection, identification and function causing stages occur in thewearable apparatus, they could be performed in an associated otherapparatus such as a smartphone or tablet computer which receives thedata indicative of the gesture from the wearable apparatus, and relaysthe result of the performed function back to the wearable apparatus,such as by changing a music track or increasing the volume.

It will be appreciated that the above described embodiments are purelyillustrative and are not limiting on the scope of the invention. Othervariations and modifications will be apparent to persons skilled in theart upon reading the present application.

Moreover, the disclosure of the present application should be understoodto include any novel features or any novel combination of featureseither explicitly or implicitly disclosed herein or any generalizationthereof and during the prosecution of the present application or of anyapplication derived therefrom, new claims may be formulated to cover anysuch features and/or combination of such features.

1-15. (canceled)
 16. An apparatus, comprising: at least one processor;and at least one memory including computer program code, the at leastone memory and the computer program code configured to, with the atleast one processor, cause the apparatus at least to perform: receivingdata indicative of a detected user gesture at a location which is remotefrom a data processing terminal; identifying a first application basedon the distance of the detected user gesture being within a firstdistance range from the data processing terminal, wherein a plurality ofapplications are associated with different distance ranges from the dataprocessing terminal; and causing performance of one of a plurality offunctions of the first application based on the user gesture.
 17. Theapparatus of claim 16, the at least one memory and the computer programcode being further configured to, with the at least one processor, causethe apparatus at least to perform: detecting another remote user gestureat a distance within a second range from the data processing terminal;identifying a second application, different from the first application,based on the distance being within the second range; and causingperformance of one of a plurality of functions of the second applicationbased on the user gesture.
 18. The apparatus of claim 16, wherein thedifferent distance ranges are substantially non-overlapping.
 19. Theapparatus of claim 16, wherein causing performance of the one of saidplurality of functions comprises identifying a type of the detected usergesture and determining which of a plurality of predetermined functionsassociated with the identified application correspond to said identifiedgesture type, which determined function is then caused to be performed.20. The apparatus of claim 16, wherein in the event that a predeterminedgesture moves from the first distance range, into a different distancerange, a data transfer function is performed between the associatedapplications.
 21. The apparatus of claim 16, wherein in the event that apredetermined gesture corresponds to a sharing function, a data transferfunction is performed between the associated application and anapplication associated with another data processing terminal inproximity.
 22. The apparatus of claim 16, wherein the associationbetween different ones of the plurality of applications and thedifferent distance ranges is updated dynamically.
 23. The apparatus ofclaim 22, wherein the association is dynamically updated by assigning toa predetermined one of the different distance ranges the most frequentlyand/or recently used application.
 24. The apparatus of claim 23, whereinthe predetermined one of the different distance ranges is that which isclosest to the data processing terminal.
 25. The apparatus of claim 16,wherein the apparatus is a data processing terminal.
 26. The apparatusof claim 25, wherein the apparatus is a wearable data processingterminal.
 27. The apparatus of claim 26, wherein the apparatus comprisesone of an earphone, headphones and watch.
 28. The apparatus of claim 26,wherein causing performance of the function comprises issuing acorresponding instruction to a further data terminal to which thewearable data processing terminal is proximate.
 29. A method comprising:receiving data indicative of a detected user gesture at a location whichis remote from a data processing terminal; identifying a firstapplication based on the distance of the detected user gesture beingwithin a first distance range from the data processing terminal, whereina plurality of applications are associated with different distanceranges from the data processing terminal; and causing performance of oneof a plurality of functions of the first application based on the usergesture.
 30. A non-transitory computer readable medium comprisingprogram instructions stored thereon for performing at least thefollowing:: receive data indicative of a detected user gesture at alocation which is remote from a data processing terminal; identify afirst application based on the distance of the detected user gesturebeing within a first distance range from the data processing terminal,wherein a plurality of applications are associated with differentdistance ranges from the data processing terminal; and cause performanceof one of a plurality of functions of the first application based on theuser gesture.